// pages/login/login.js
const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    username:"",
    password:"",
    agree:false,
    loginBg:"http://zhyl.oos-hazz.ctyunapi.cn/llcs/image/c3351568378fcb0e833f7cf4a1f537a07c726a067503572eca30bf29f4d3aff6.png",
    logo:'/images/login/systemLogo.png'
  },
  /* 是否勾选隐私政策Fn */
  handleIsAgree(){
    this.setData({
      "agree": !this.data.agree
    })
  },
  /* 登录Fn */
  async handleLogin(){
    setTimeout(()=>{app.toast("登录成功")},1500)
    setTimeout(()=>{ wx.reLaunch({url: '/pages/main/main'});},2000)
    return
    if(!this.data.username) return app.toast('请输入用户名/手机号！')
    if(!this.data.password) return app.toast('请输入用户名/请输入您的密码！')
    if (this.data.password.length < 6 || this.data.password.length > 14) return app.toast('密码长度应为6-12个字符/请输入您的密码！')
    if(!this.data.agree) return app.toast('请勾选已阅读并同意服务协议、隐私政策！')
    await app.post(app.globalApis.loginApi.login, {
      username: this.data.username, 
      password: this.data.password,
      isApp:"true"
    },{form:false}).then(res=>{
      wx.setStorageSync('token', res.data.accessToken)
      wx.setStorageSync('refreshToken', res.data.refreshToken)
      wx.setStorageSync('userType', '2')
    })
    /* 权限接口获取 */
    const getPermissionInfo = app.get(app.globalApis.loginApi.getPermissionInfo).then(res => {  
      wx.setStorageSync('permissions', JSON.stringify(res.data.permissions))
      wx.setStorageSync('roles', JSON.stringify(res.data.roles))
      wx.setStorageSync('menus', JSON.stringify(res.data.menus))
      return res; 
    });  
    /* 用户信息获取 */
    const appgetUserInfoPromise = app.get(app.globalApis.userInfoApi.getUserAllInfo).then(res => {  
      wx.setStorageSync('userInfo', res.data);  
      return res; 
    });
    app.loading("登录中，请稍后！",false,function(){
      Promise.all([getPermissionInfo, appgetUserInfoPromise]).then(() => {  
        // 当两个请求都成功完成后，执行页面跳转  
        app.initWebSocket()
        setTimeout(()=>{app.toast("登录成功")},1500)
        setTimeout(()=>{ wx.reLaunch({url: '/pages/main/main'});},2000)
      }).catch(error => {  
        // 处理错误，例如显示错误消息或进行其他错误处理  
        console.error('API 请求失败：', error);  
      });  
     
    })
  },
  /* 一键登录Fn */
  handleOnKeyLogin(e){
    if(!this.data.agree) return app.toast('请勾选已阅读并同意服务协议、隐私政策！')
    wx.login({
      success: (res) => {
        if(e.detail.errMsg == 'getPhoneNumber:ok'){
          app.post(app.globalApis.loginApi.appLogin, {
            loginCode:res.code,
            phoneCode:e.detail.code,
            state:1
           }).then(result=>{
              wx.setStorageSync('token', result.data.accessToken)
              wx.setStorageSync('openid', result.data.openid)
              wx.setStorageSync('userType', '1')
              app.get(app.globalApis.userInfoApi.appgetUserInfo).then(res => {
                wx.setStorageSync('userInfo', res.data)
                wx.reLaunch({
                  url: '/pages/main/main'
                })
              })
              wx.reLaunch({
                url: '/pages/main/main'
              })
          })
        }
      }
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})